package com.itheima.dao;

import com.itheima.pojo.QueryVO;
import com.itheima.pojo.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author zhangyan
 * @date 2021/1/27 21:40
 */
public interface UserMapper {

    /**
     * 查询所有
     * @return
     */
    public List<User> selectAll();

    /**
     * 模糊查询
     * @param name
     * @return
     */
    public List<User> selectLikeCondition1(String name);
    public List<User> selectLikeCondition2(String name);
    public List<User> selectLikeCondition3(String name);

    /**
     * 分页查询
     * @param startIndex
     * @param pageSize
     * @return
     */
    List<User> findByPage1(Integer startIndex , Integer pageSize);
    List<User> findByPage2(@Param("startIndex") Integer startIndex , @Param("pageSize")Integer pageSize);

    /**
     * QueryVo查询
     * @param queryVO
     * @return
     */
    List<User> findByQueryVO(QueryVO queryVO);

    /**
     * map查询
     * @param map
     * @return
     */
    List<User> findByMap(Map<String,Object> map);

    /**
     * 插入
     *
     * @param user
     * @return
     */
    int insert01(User user);
    /**
     * 插入
     *
     * @param user
     * @return
     */
    int insert02(User user);

    //根据性别查询
    List<User> selectByCondition(String sex);
}
